package com.wmd.core.mybatis.union;
/**
*类说明
*@author yincheng lu
*@time 2019年7月16日下午2:55:10
*@Description
*/

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wmd.core.operation.UnionCriteria;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;
import java.util.Map;

public interface UnionSelectDao {
	
//	int selectSequence(@Param("name") String name);
	//仅支持一层子查询
	IPage<Map<String, Object>> selectByExample(Page<?> page, UnionCriteria example);
	List<Map<String, Object>> selectByExampleNonePage(UnionCriteria example);

	//嵌套子查询，SQL由UnionCriteria生成
	@Select("${SQL}")
	IPage<Map<String, Object>> selectBySql(Page<?> page, @Param("SQL") String SQL);

	@Select("${SQL}")
	List<Map<String, Object>> selectBySqlNonePage(@Param("SQL") String SQL);
}
